home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 147
/
Gekkan Dennou Club - 2000.8 Vol. 147 (Japan).7z
/
Gekkan Dennou Club - 2000.8 Vol. 147 (Japan) (Track 1).bin
/
games
/
sakiba
/
source
/
sakiba.h
< prev
next >
Wrap
Text File
|
2000-06-20
|
3KB
|
130 lines
typedef int Bool;
#define TRUE 1
#define FALSE 0
typedef unsigned short CODE; /* スプライトコード */
typedef unsigned short COLOR; /* 色 */
typedef signed long REAL; /* 実数 */
#define HP_MAX 100 /* 体力初期値 */
enum { /* 行動の種類 */
ACT_GUARD = 0, /* 防御 */
ACT_ATTACK1, /* 弱攻撃 */
ACT_ATTACK2, /* 強攻撃 */
ACT_SUKI, /* 攻撃後の隙 */
ACT_DAMAGE, /* 攻撃を受けた */
ACT_MAX,
};
enum {PLAYER1 = 0, PLAYER2}; /* プレイヤー */
enum { /* 操作 */
OPR_PLAYER = 0, /* 人 */
OPR_COM /* コンピュータ */
};
enum { /* モード */
MODE_BATTLE = 0, /* 戦闘 */
MODE_INPUT, /* 入力 */
MODE_READY /* 登場 */
};
enum { /* アニメーションシーケンス */
SEQ_NORMAL, /* 通常 */
SEQ_GUARD, /* 防御 */
SEQ_DAMAGE, /* くらい */
SEQ_READY, /* 登場 */
SEQ_WIN, /* 勝ち */
SEQ_LOSE, /* 負け */
SEQ_MAX
};
#define GUARD_CNT 5 /* 防御持続時間 */
#define DAMAGE_CNT 6 /* 攻撃くらい持続時間 */
/*** 行動 *******/
typedef struct {
int kind; /* 行動の種類 */
int count; /* 持続時間 */
} ACTION;
/*** キャラクタスプライトパターン *******/
typedef struct {
int w, h; /* 大きさ */
CODE* code_l; /* プレイヤー1パターン */
CODE* code_r; /* プレイヤー2パターン */
} CHR_PAT;
/*** アニメーションシーケンス *******/
typedef struct {
short* pat; /* パターンシーケンス */
int* x; /* x座標シーケンス */
int* y; /* y座標シーケンス */
} SEQUENCE;
/*** 攻撃技 *******/
typedef struct {
int before; /* 前動作の時間 */
int after; /* 後動作の時間 */
int power; /* 威力 */
char* name; /* 技名 */
SEQUENCE seq1[2]; /* アニメーション */
SEQUENCE seq2[2];
} ATK_TECH;
/*** スプライトパターン用パラメータ *******/
typedef struct {
CHR_PAT* pat; /* 描画パターン */
short pat_cnt; /* パターンカウンタ */
REAL x, dx, ddx; /* 表示x座標 */
int x_cnt; /* x移動カウンタ */
REAL y, dy, ddy; /* 表示y座標 */
int y_cnt; /* y移動カウンタ */
SEQUENCE seq; /* アニメーションシーケンス */
SEQUENCE now;
CHR_PAT* pat_data; /* キャラクタパターン */
} SPR_PARAM;
/*** キャラクタデータ *******/
typedef struct {
ATK_TECH attack1; /* 弱攻撃 */
ATK_TECH attack2; /* 強攻撃 */
char* name; /* キャラクタ名 */
char* sp_name; /* スプライトファイル名 */
char* pal_name[2]; /* パレットファイル名 */
CHR_PAT* pat_data; /* キャラクタパターン */
SEQUENCE seq[SEQ_MAX][2]; /* アニメーションシーケンス */
} CHR_DATA;
/*** キャラクタパラメータ *******/
typedef struct {
int num; /* 先攻、後攻 */
int hit_point; /* 体力 */
int d_hp; /* 表示体力 */
ACTION action[6]; /* 行動 */
int operation; /* 操作 */
SPR_PARAM spr[2]; /* スプライトパターン */
CHR_DATA* data; /* キャラクタデータ */
} CHR_PARAM;
extern CHR_PARAM chr_param[2]; /* キャラクタパラメータ */
extern int turn; /* ターン */
extern int mode; /* モード */
#define rnd(n) (rand() % (n)) /* 乱数 */
/****************** End of File *****************************************/